﻿using System;
using System.Collections.Generic;
using LM.InterfacesFabricas.DTOs;

namespace LM.InterfacesFabricas.Interfaces.Servicos
{
    public interface IServicoDeLocacao : IServicoGenerico<DtoLocacao>
    {
        IList<DtoLocacao> ConsultePeloCliente(string nomeCliente);

        IList<DtoLocacao> ConsultePelaPlacaVeiculo(string placaVeiculo);

        IList<DtoLocacao> Consulte(DateTime dataEntrada);

        /// <summary>
        /// Imprime em Pdf um Recibo de Locação
        /// </summary>
        /// <param name="reciboDeLocacao">Locação a ter o recibo impresso.</param>
        void ImprimaReciboDeLocacao(DtoLocacao reciboDeLocacao);

        List<DtoLocacao> ConsulteLocacoesPorPeriodo(DateTime inicio, DateTime fim);
    }
}
